JavaScript

オブジェクト初期化子: { }

 編集:2022.08.20 by T.A.

リテラル表記法(初期化子表記法)を使用して初期化されます。オブジェクト初期化子はオブジェクトのプロパティ名と関連した値のゼロ以上のペアのリストで、中括弧「{ }」で囲まれます。

{[Prop1:[, Prop2:[, ]]]}
Propn プロパティ名
¶リテラル、オブジェクト、関数。

オブジェクトであることだけ:

let Obj={}

プロパティ「a」=文字列「foo」、

プロパティ「b」=数値「42」、

プロパティ「c」=空オブジェクト。

let Obj={a:'foo', b:42, c:{}}

上記と同様になる:

let a='foo', b=42, c={}
let Obj={a:a, b:b, c:c}

略記プロパティ名:

let a='foo', b=42, c={};
let Obj={a, b, c}

計算プロパティ名

let prop='foo';
let Obj={
  [prop]:'hey',
  ['b'+'ar']:'there'
}

不明。構文らしい:

let Obj = {
  property: function (parameters) {},
  get property() {},
  set property(value) {}
};
Obj={
  Prop1:function(P1){alert(P1 * 10)}
};
D=Obj; //=[object]:[object Object]
	//Prop1=[function]:function(P1){alert(P1 * 10)}
Obj.Prop1(10); //表示:100
Obj={
  Prop1:function(P1){alert(P1 * 10)},
  Prop2:0,
  set Prop3(P1){this.Prop2=P1},
  get Prop3(){return this.Prop2 + 100}
};
D=Obj;
Obj.Prop1(10); //表示:100
Obj.Prop2=10;
DA=Obj.Prop3; //=110

オブジェクト内なのでカンマで区切る。

関連

new Object()Object.create()


テスト